import torch
import matplotlib.pyplot as plt

# 已知高斯的简化公式，求其一阶导数图像
# 手动求其导数

x = torch.linspace(-2, 2, 40)
x.requires_grad_(True)
y = torch.exp(x ** 2 / 2)
y_sum = torch.sum(y)
plt.subplot(121)
plt.plot(x.detach().numpy(), y.detach().numpy(), 'r-')
y_sum.backward()

slope = x.grad
plt.subplot(122)
plt.plot(x.detach().numpy(), slope.detach().numpy(), 'b--')

plt.show()
